package com.sunsy.authserver.wrapper;

import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.sunsy.authserver.beans.dto.UserTokenDTO;
import com.sunsy.authserver.beans.po.UserToken;
import com.sunsy.authserver.beans.vo.UserTokenVO;

/**
 * (UserToken)表包装类
 *
 * @author makejava
 * @since 2021-07-20 14:40:45
 */
public class UserTokenWrapper extends AbstractWrapper<UserToken, UserTokenVO, UserTokenDTO> {

    public static UserTokenWrapper build() {
        return new UserTokenWrapper();
    }

    /**
     * dto转queryWrapper
     *
     * @param dto 交互数据
     * @return 查询Wrapper
     */
    @Override
    public QueryWrapper<UserToken> dto2QWrapper(UserTokenDTO dto) {
        UserToken po = dto2PO(dto);
        return new QueryWrapper<>(po);
    }

    /**
     * dto转po
     *
     * @param dto 交互数据
     * @return UserToken 实体对象
     */
    @Override
    public UserToken dto2PO(UserTokenDTO dto) {
        return BeanUtil.copyProperties(dto, UserToken.class);
    }

    /**
     * po转vo
     *
     * @param po 实体对象
     * @return UserToken 实体展示对象
     */
    @Override
    public UserTokenVO po2VO(UserToken po) {
        return BeanUtil.copyProperties(po, UserTokenVO.class);
    }

}